/*
 * Classe que modela o objeto Matrícula
 *
 */

package br.senac.sp.uniobjetos;

import java.util.Date;


public class Matricula {
	private Turma turma;
	private Aluno aluno;
	private Date dataMatricula;	

	public Matricula() {
	    this.turma = null;
	    this.aluno = null;
	    this.dataMatricula = null;
	}
	
	public Matricula (Turma turma, Aluno aluno, Date dataMatricula) {
		this.turma = turma;
		this.aluno = aluno;
		this.dataMatricula = dataMatricula;			 
	}

	public Turma getTurma() {
		return turma;
	}
	public void setTurma(Turma turma) {
		this.turma = turma;
	}
	
	public Aluno getAluno() {
		return aluno;
	}
	public void setAluno(Aluno aluno) {
		this.aluno = aluno;
	}
	
	public Date getDataMatricula() {
		return dataMatricula;
	}
	public void setDataMatricula(Date dataMatricula) {
		this.dataMatricula = dataMatricula;
	}
		
	public boolean equals(Object obj) {
		try {
			Matricula matricula = (Matricula) obj;
			return (turma.equals(matricula.getTurma()) 
					&& aluno.equals(matricula.getAluno()));
		} catch(Exception e) {
			return false;
		}
	}
	
	public boolean equals(Matricula obj) {
	    return this.turma.equals(obj.getTurma()) &&
	            this.aluno.equals(obj.getAluno()) &&
	            this.dataMatricula.equals(obj.getDataMatricula());
	}
}